Licensing arrangements for software are of two basic types: one type grants a user the right to use software a preset number of times and another type grants a user the right to install software a preset number of times. The latter type, based on how many times a user can install software, is called seat-based licensing.
There exist methods and applications for enforcing a license which grants a user the right to use software a preset number of times. Some such applications are embedded within the software being licensed, and essentially count the number of times the software is launched. Once this counter reaches the number of licenses granted, the software will be locked. Examples of such applications are FLEXlm, SafeCast, and FlexNet Publisher. U.S. Pat. No. 5,390,297 describes such methods and systems in more detail.
Enforcement of seat-based licensing schemes is primarily done by the end user. Where an individual purchases software and installs that software on just one system, no enforcement is necessary. However, oftentimes an enterprise purchases one install disk (or download) and a number of licenses for installation on a number of systems across the enterprise network. In this case, it is up to the system administrator of the enterprise to ensure that the enterprise does not install more copies of the software than were purchased. If the enterprise does install more copies than were purchased, there is no way for the licensor to know that the enterprise is in breach. Therefore, many software licensors have implemented varying levels of manual compliance-checking, which is a costly and time-consuming process for both the licensor and the enterprise.
Enterprises might have thousands of software titles, each installed on thousands of end-user systems. Because of the vast number of installations, manual compliance-checking may be unfeasible and inaccurate. Commercial software distribution tools do exist which control the number of systems to which the software is distributed. However, such tools only limit the number of copies distributed, not the number of copies installed. Software asset management tools exist which report the number of systems to which the software has been installed. However, such tools report this number post-install. Thus, they are only useful in reporting non-compliance, not preventing it.
A system administrator may want to know if the enterprise is installing fewer titles than were purchased. Software asset management tools may perform this function, but they do so by trolling the enterprise's network.